home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 002 / bluebery.arc / IBMLABEL.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-06-29  |  7.3 KB  |  259 lines

  1. 5  CLS:KEY OFF:SCREEN 0,0,0:WIDTH 80:CLEAR:FOR I=1 TO 10:KEY I,"":NEXT:KEY 2,"GOTO 60"+CHR$(13):KEY 10,"RUN"+CHR$(34)+"BLUEMENU"+CHR$(34)+CHR$(13):LIST 10-57
  2. 10  ' *************** EPSON/GEMINI MULITI-LABEL PROGRAM ************************
  3. 12  'KEYTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENCLOSE
  4. 14  'OPEN           MULTI-LABEL PROGRAM FOR EPSON/GEMINI - (NON FILE)             OPEN
  5. 16  'OPEN                                                                         OPEN
  6. 18  'OPEN       This program is designed to use the IBM/EPSON dot matrix printer. OPEN
  7. 20  'OPEN  Codes may be modified to use other printers.  Print statements are     OPEN
  8. 22  'OPEN  directed to LPT1:. If you are using LPT2, change the LPTn: reference   OPEN
  9. 24  'OPEN  in line 420.  A NEC 8023A version is included elsewhere on this disk.  OPEN
  10. 26  'OPEN  The error routine at 6000 will function for a printer 'off' or 'off    OPEN
  11. 28  'OPEN  line' status. Other errors are processed by the BASIC error routine.   OPEN
  12. 30  'OPEN       A more complex file and label program is on the disk as BLUE-     OPEN
  13. 32  'OPEN  BERY.BAS and/or LABELPRO.BAS. It has a full file and revision capa-    OPEN
  14. 34  'OPEN  bility.  The 320K disk contains both BLUEBERY.BAS and LABELPRO.BAS     OPEN
  15. 36  'OPEN       All or part of this program may be used by purchaser without      OPEN
  16. 38  'OPEN  license or attribution.  (c) G I N A C O  -- 1983   Ver 5.1/160/320    OPEN
  17. 40  'SCREENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENLOAD
  18. 55  '        *****  < F2 > to RUN  *******  < F10 > For BLUEMENU  *****
  19. 57  ' ====== To avoid DOCUMENTATION BOX each time, REM or DELETE  line 5 ======
  20. 60  REM
  21. 300  FOR I! = 1 TO 10
  22. 310     KEY I!,""
  23. 320    NEXT
  24. 330  CLS
  25. 340   SCREEN 0,0,0
  26. 350    WIDTH 80
  27. 360     CLEAR
  28. 370      GOSUB 5000
  29. 380       ON ERROR GOTO 6000
  30. 390  LPRINT CLEANUP$;
  31. 400   CLOSE
  32. 410    GOSUB 5000
  33. 420     OPEN "LPT1:" FOR OUTPUT AS #2
  34. 430      CLS
  35. 440       LOCATE 6,16
  36. 450        PRINT "THIS WILL PRINT LABELS ON STANDARD LABEL STOCK."
  37. 460         PRINT TAB( 10)"YOU MAY PRINT AT 7,10,OR 17 CPI BASED ON YOUR SELECTION."
  38. 470          PRINT
  39. 480           PRINT
  40. 490  PRINT TAB( 22)"SELECT PITCH AND <ENTER> CHOICE"
  41. 500   PRINT
  42. 510    PRINT TAB( 22)"PICA -- 10 CPS................1"
  43. 520     PRINT TAB( 22)"ITALICS -- 10 CPS.............2"
  44. 530      PRINT TAB( 22)"CONDENSED --- 17.0 CPS........3"
  45. 540       PRINT TAB( 22)"FIRST LINE ONLY EXPANDED......4"
  46. 550  PRINT TAB( 22)"ALL LINES EXPANDED............5"
  47. 560   PRINT TAB( 22)"END PROGRAM...................6"
  48. 570    PRINT
  49. 580     PRINT
  50. 590      PRINT TAB( 22)"CHOOSE........";
  51. 600       INPUT X!
  52. 610        ON X! GOTO 620,640,660,1470,1870,2310
  53. 620  PRINT #2,DARK$;
  54. 630   GOTO 680
  55. 640  PRINT #2,ITALIC$ + DARK$;
  56. 650   GOTO 680
  57. 660  PRINT #2,EXPAND.SMALL$;
  58. 670   GOTO 680
  59. 680  CLS
  60. 690   LOCATE 10,10
  61. 700    PRINT "WAS THAT PITCH SETTING OK "
  62. 710     GOSUB 1310
  63. 720      IF Q! = 1 THEN 740
  64. 730  IF Q! = 2 THEN 390
  65. 740  CLS
  66. 750   LOCATE 8,10
  67. 760    LINE INPUT "LINE 1:> ";L1$
  68. 770     LOCATE 9,10
  69. 780      LINE INPUT "LINE 2:> ";L2$
  70. 790       LOCATE 10,10
  71. 800        LINE INPUT "LINE 3:> ";L3$
  72. 810         LOCATE 11,10
  73. 820          LINE INPUT "LINE 4:> ";L4$
  74. 830           LOCATE 12,10
  75. 840            LINE INPUT "LINE 5:> ";L5$
  76. 850             PRINT
  77. 860              PRINT TAB( 10)"IS INPUT CORRECT ? "
  78. 870               GOSUB 1310
  79. 880  IF Q! = 1 THEN 900
  80. 890  IF Q! = 2 THEN 740
  81. 900  REM *************** LABEL PRINT ROUTINE ******************************
  82. 910  CLS
  83. 920   LOCATE 11,10
  84. 930    INPUT "HOW MANY LABELS ";X!
  85. 940     LOCATE 13,10
  86. 950      INPUT "LEFT PRINT MARGIN ";Z!
  87. 960       LOCATE 15,10
  88. 970        PRINT "ARE THESE SETTINGS CORRECT? "
  89. 980         GOSUB 1310
  90. 990          IF Q! = 1 THEN 1010
  91. 1000  IF Q! = 2 THEN 900
  92. 1010  REM
  93. 1020  CLS
  94. 1030   LOCATE 10,10
  95. 1040    INPUT "PRESS ENTER WHEN PRINTER READY. ";R!
  96. 1050     ON R! GOTO 1060
  97. 1060  FOR NL! = 1 TO X!
  98. 1070     PRINT #2, CHR$(13);
  99. 1080      PRINT #2, TAB( Z!);L1$
  100. 1090       PRINT #2, TAB( Z!);L2$
  101. 1100        PRINT #2, TAB( Z!);L3$
  102. 1110         PRINT #2, TAB( Z!);L4$
  103. 1120          PRINT #2, TAB( Z!);L5$; CHR$(13);
  104. 1130         NEXT NL!
  105. 1140  :REMPRINT #2, CHR$(27); CHR$(76);"000";
  106. 1150  CLS
  107. 1160  :REM *********************  TERMINATION ROUTE  ********************
  108. 1170  LOCATE 10,10
  109. 1180   PRINT "REPRINT THIS LABEL "
  110. 1190    GOSUB 1310
  111. 1200     IF Q! = 1 THEN 1220
  112. 1210  IF Q! = 2 THEN 1250
  113. 1220  X! = 0
  114. 1230   Z! = 0
  115. 1240    GOTO 910
  116. 1250  CLS
  117. 1260   LOCATE 12,10
  118. 1270    PRINT "ENTER ANOTHER LABEL "
  119. 1280     GOSUB 1310
  120. 1290      IF Q! = 1 THEN 390
  121. 1300  IF Q! = 2 THEN 1440
  122. 1310  COLOR 0,7
  123. 1320   LOCATE 20,10
  124. 1330    PRINT " YES OR NO <Y/N> ? "
  125. 1340     COLOR 7,0
  126. 1350      A$=INKEY$:IF A$="" THEN 1350
  127. 1360  IF (LEFT$(A$,1)=CHR$(89) OR LEFT$(A$,1)=CHR$(121)) THEN Q! = 1 : RETURN
  128. 1370  IF (LEFT$(A$,1)=CHR$(78) OR LEFT$(A$,1)=CHR$(110)) THEN Q! = 2 : RETURN
  129. 1375  SOUND 400,4:GOTO 1350
  130. 1440  CLOSE
  131. 1450   CLS
  132. 1460    END
  133. 1470  REM PRINT #2, CLEANUP$;
  134. 1480  CLS
  135. 1490   LOCATE 9,20
  136. 1500    COLOR 7,0
  137. 1510     PRINT "CHECK LABEL POSITION IN PRINTER"
  138. 1520      COLOR 7,0
  139. 1530       FOR I! = 1 TO 2000
  140. 1540        NEXT
  141. 1550  CLS
  142. 1560   LOCATE 8,20
  143. 1570    PRINT "THIS WILL PRINT FIRST LINE ONLY IN EXPANDED PRINT"
  144. 1580     LOCATE 11,20
  145. 1590      LINE INPUT "LINE ONE    ";A$(1)
  146. 1600       LOCATE 12,20
  147. 1610        LINE INPUT "LINE TWO    ";A$(2)
  148. 1620         LOCATE 13,20
  149. 1630          LINE INPUT "LINE THREE  ";A$(3)
  150. 1640           LOCATE 14,20
  151. 1650            LINE INPUT "LINE FOUR   ";A$(4)
  152. 1660  LOCATE 15,20
  153. 1670   LINE INPUT "LINE FIVE   ";A$(5)
  154. 1680    PRINT
  155. 1690  LOCATE 17,20
  156. 1700   PRINT "ENTER <1> IF OK <2> TO REDO ";
  157. 1710    INPUT X!
  158. 1720     ON X! GOTO 1730,1550
  159. 1730  CLS
  160. 1740  LOCATE 19,20
  161. 1750   INPUT "HOW MANY LABELS ";PN!
  162. 1760    FOR K! = 1 TO PN!
  163. 1770       PRINT #2,EXPAND$ + DARK$;A$(1);EXPAND.END$
  164. 1780        FOR I! = 2 TO 5
  165. 1790           PRINT #2,A$(I!)
  166. 1800          NEXT
  167. 1810           PRINT #2, CHR$(13);
  168. 1820          NEXT K!
  169. 1830           LOCATE 19,20
  170. 1840            PRINT "TO REPRINT ENTER <1> FOR NEW <2> ";
  171. 1850             INPUT X!
  172. 1860              ON X! GOTO 1690,2290
  173. 1870  REM
  174. 1880  CLS
  175. 1890   LOCATE 9,20
  176. 1900    COLOR 7,0
  177. 1910     PRINT "CHECK LABEL POSITION IN PRINTER"
  178. 1920      COLOR 7,0
  179. 1930       FOR I! = 1 TO 2000
  180. 1940        NEXT
  181. 1950         CLS
  182. 1960          LOCATE 8,20
  183. 1970           PRINT "THIS WILL PRINT ALL LINES IN EXPANDED PRINT."
  184. 1980            LOCATE 12,20
  185. 1990             LINE INPUT "LINE ONE    ";A$(1)
  186. 2000              LOCATE 13,20
  187. 2010  LINE INPUT "LINE TWO    ";A$(2)
  188. 2020   LOCATE 14,20
  189. 2030    LINE INPUT "LINE THREE  ";A$(3)
  190. 2040     LOCATE 15,20
  191. 2050      LINE INPUT "LINE FOUR   ";A$(4)
  192. 2060       LOCATE 16,20
  193. 2070        LINE INPUT "LINE FIVE   ";A$(5)
  194. 2080         PRINT
  195. 2090  LOCATE 18,20
  196. 2100   PRINT "ENTER <1> IF OK <2> TO REDO ";
  197. 2110    INPUT X!
  198. 2120     ON X! GOTO 2130,1880
  199. 2130  LOCATE 20,20
  200. 2140   INPUT "HOW MANY LABELS ";PN!
  201. 2150    FOR K! = 1 TO PN!
  202. 2160       PRINT #2,EXPAND$ + DARK$;A$(1)
  203. 2170        PRINT #2,EXPAND$;A$(2)
  204. 2180         PRINT #2,EXPAND$;A$(3)
  205. 2190          PRINT #2,EXPAND$;A$(4)
  206. 2200           PRINT #2,EXPAND$;A$(5)
  207. 2210            PRINT #2," "
  208. 2220             PRINT #2,EXPAND.END$;
  209. 2230            NEXT K!
  210. 2240             LOCATE 22,20
  211. 2250  PRINT "TO REPRINT ENTER <1> FOR NEW <2> ";
  212. 2260   INPUT X!
  213. 2270    CLS
  214. 2280     ON X! GOTO 2090,2290
  215. 2290  PRINT #2,CLEANUP$;
  216. 2300   GOTO 390
  217. 2310  CLOSE
  218. 2320   END
  219. 5000  REM **** PRINTER SUBROUTINES ***
  220. 5030  SMALL$ = CHR$(15)
  221. 5060   UNSMALL$ = CHR$(18)
  222. 5090    EXPAND.SMALL$ = CHR$(14) + CHR$(15)
  223. 5120     CANX.EXP.COMP$ = CHR$(18) + CHR$(20)
  224. 5150      EXPAND$ = CHR$(14)
  225. 5180       EXPAND.END$ = CHR$(20)
  226. 5210        DARK$ = CHR$(27) + CHR$(69)
  227. 5240         ITALIC$ = CHR$(27) + CHR$(52)
  228. 5270          ITALIC.EXP.CON$ = CHR$(14) + CHR$(15) + CHR$(27) + CHR$(52)
  229. 5300  ITALIC.EXP$ = CHR$(27) + CHR$(52) + CHR$(14)
  230. 5330   END.ITALIC$ = CHR$(27) + CHR$(53)
  231. 5360    START.ULINE$ = CHR$(27) + CHR$(45) + CHR$(1)
  232. 5390     END.ULINE$ = CHR$(27) + CHR$(45) + CHR$(0)
  233. 5420      PERM.EXPAN$ = CHR$(27) + CHR$(87) + CHR$(1)
  234. 5450       END.PERMEXP$ = CHR$(27) + CHR$(87) + CHR$(0)
  235. 5480  START.DSTRIKE$ = CHR$(27) + CHR$(71)
  236. 5510   END.DSTRIKE$ = CHR$(27) + CHR$(72)
  237. 5540    TINYLINE$ = CHR$(27) + CHR$(83) + CHR$(0)
  238. 5570     END.TINY$ = CHR$(27) + CHR$(84)
  239. 5600      ESC$ = CHR$(27)
  240. 5630       CLEANUP$ = CHR$(27) + CHR$(64)
  241. 5660        RETURN
  242. 6000  REM ********* PRINTER ERROR ROUTINE ***************
  243. 6030  IF ERR = 24 THEN 6120 ELSE 6060
  244. 6060  IF ERR = 25 THEN 6120 ELSE 6090
  245. 6090  ON ERROR GOTO 0
  246. 6120  KEY OFF
  247. 6150   BEEP
  248. 6180    BEEP
  249. 6210     LOCATE 25,1
  250. 6240      PRINT SPC( 79)
  251. 6270       LOCATE 25,20
  252. 6300        PRINT "CHECK PRINTER - PRESS ANY KEY TO CONTINUE"
  253. 6330  IF INKEY$ = "" THEN 6330
  254. 6360  KEY OFF
  255. 6390   RESUME
  256. 6420    END
  257. 65000  REM********************** SAVE ROUTINE *********************************
  258. 65100  SAVE "B:IBMLABEL.BAS"
  259.